#include <unistd.h>
#include <sys/types.h>
#include <stdio.h>

extern char **environ;

int main(int argc, char const *argv[])
{
    pid_t pid = fork();
    char *arg[] = {
        "/usr/bin/ping",
        "-c",
        "10",
        "www.baidu.com",
        NULL};

    if (pid == 0)
    {
        // 子进程
        printf("我是子进程\n");
        int result = execve("/usr/bin/ping", arg, environ);
        if (result < 0)
        {
            printf("执行mkdir失败\n");
            perror("execve");
        }
    }
    else
    {
        // 父进程
        printf("我是父进程, 子进程pid为%d\n", pid);
    }

    return 0;
}
